#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
重置管理员账号
"""

import os
import sys
import django

# 设置Django环境
sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'TradingPlatform_Server.settings')
django.setup()

from Server.models import User

def reset_admin():
    """重置管理员账号"""
    admin_phone = '13800138000'
    admin_password = 'admin123'
    
    print("\n" + "="*60)
    print("重置管理员账号")
    print("="*60)
    
    # 查找管理员账号
    admin = User.objects.filter(phone=admin_phone).first()
    
    if admin:
        print("\n[找到] 管理员账号已存在")
        print("  - ID: %s" % admin.id)
        print("  - 昵称: %s" % admin.username)
        print("  - 手机号: %s" % admin.phone)
        print("  - 旧密码: %s" % admin.password)
        
        # 更新密码
        admin.password = admin_password
        admin.is_admin = True
        admin.save()
        
        print("\n[成功] 密码已重置为: %s" % admin_password)
    else:
        print("\n[未找到] 管理员账号不存在，正在创建...")
        
        # 创建管理员账号
        admin = User.objects.create(
            id='admin001',
            phone=admin_phone,
            username='系统管理员',
            password=admin_password,
            is_admin=True,
            money=0
        )
        
        print("\n[成功] 管理员账号已创建")
    
    print("\n" + "="*60)
    print("现在可以使用以下信息登录：")
    print("  手机号: %s" % admin_phone)
    print("  密码: %s" % admin_password)
    print("="*60 + "\n")

if __name__ == '__main__':
    try:
        reset_admin()
    except Exception as e:
        print("\n[错误] %s" % str(e))
        import traceback
        traceback.print_exc()

